#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=500050;
int dp1[110][110][110];
int dp2[200010][12][12];
int n;
int a[211111];
signed main(){
    freopen("color.in","r",stdin);
    freopen("color.out","w",stdout);
    int T;
    cin>>T;
    while(T--){
        cin>>n;
        for(int i=1;i<=n;i++)
        {
            cin>>a[i];
        }
        if(n<=100){
            for(int i=0;i<=n;i++)
            for(int j=0;j<=100;j++){
            for(int k=0;k<=100;k++){
                dp1[i][j][k]=-10000000;
            }
        }
        dp1[0][0][0]=0;
        for(int i=1;i<=n;i++){
            for(int j=0;j<=100;j++){
                for(int k=0;k<=100;k++){
                    dp1[i][a[i]][k]=max(dp1[i][a[i]][k],dp1[i-1][j][k]+(a[i]==j?a[i]:0));
                    dp1[i][j][a[i]]=max(dp1[i][j][a[i]],dp1[i-1][j][k]+(a[i]==k?a[i]:0));
                    //if(dp1[i][a[i]][k]==4) cout<<i<<" "<<j<<" "<<k<<endl;
                }
            }
        }
        int ans=0;
        for(int j=0;j<=100;j++){
            for(int k=0;k<=100;k++){
                ans=max(dp1[n][j][k],ans);
            }
        }
        cout<<ans<<endl;
    }
    else{
            for(int i=0;i<=n;i++)
            for(int j=0;j<=10;j++){
            for(int k=0;k<=10;k++){
                dp2[i][j][k]=-10000000;
            }
        }
        dp2[0][0][0]=0;
        for(int i=1;i<=n;i++){
            for(int j=0;j<=10;j++){
                for(int k=0;k<=10;k++){
                    dp2[i][a[i]][k]=max(dp2[i][a[i]][k],dp2[i-1][j][k]+(a[i]==j?a[i]:0));
                    dp2[i][j][a[i]]=max(dp2[i][j][a[i]],dp2[i-1][j][k]+(a[i]==k?a[i]:0));
                }
            }
        }
        int ans=0;
        for(int j=0;j<=10;j++){
            for(int k=0;k<=10;k++){
                ans=max(dp2[n][j][k],ans);
            }
        }
        cout<<ans<<endl;
    }
    }

    return 0;
}
